[INFO] cloning repository https://github.com/jeffreyrosenbluth/ray
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jeffreyrosenbluth/ray" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffreyrosenbluth%2Fray", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffreyrosenbluth%2Fray'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f1a223731b19d1dcc294528d1c9c2d5b423fa5cb
[INFO] checking jeffreyrosenbluth/ray against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffreyrosenbluth%2Fray" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jeffreyrosenbluth/ray on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jeffreyrosenbluth/ray
[INFO] finished tweaking git repo https://github.com/jeffreyrosenbluth/ray
[INFO] tweaked toml for git repo https://github.com/jeffreyrosenbluth/ray written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/jeffreyrosenbluth/ray already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0faf514055a8d601b811c43e316838e0a40824359d6f19a16a28c9d74b8d9e8a
[INFO] running `Command { std: "docker" "start" "-a" "0faf514055a8d601b811c43e316838e0a40824359d6f19a16a28c9d74b8d9e8a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0faf514055a8d601b811c43e316838e0a40824359d6f19a16a28c9d74b8d9e8a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0faf514055a8d601b811c43e316838e0a40824359d6f19a16a28c9d74b8d9e8a", kill_on_drop: false }`
[INFO] [stdout] 0faf514055a8d601b811c43e316838e0a40824359d6f19a16a28c9d74b8d9e8a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d71b15bc7def0453b12a23bd1e3701e4a861437b94ab8f9e8deec692c9997c0e
[INFO] running `Command { std: "docker" "start" "-a" "d71b15bc7def0453b12a23bd1e3701e4a861437b94ab8f9e8deec692c9997c0e", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.8
[INFO] [stderr]    Compiling proc-macro2 v1.0.37
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling syn v1.0.91
[INFO] [stderr]    Compiling rayon-core v1.9.2
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.8
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]     Checking crossbeam-channel v0.5.4
[INFO] [stderr]    Compiling rayon v1.5.2
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking miniz_oxide v0.5.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking spin v0.9.2
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking deflate v1.0.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.4.0
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]     Checking weezl v0.1.5
[INFO] [stderr]     Checking flate2 v1.0.23
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking lebe v0.5.1
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking bit_field v0.10.1
[INFO] [stderr]     Checking gif v0.11.3
[INFO] [stderr]     Checking png v0.17.5
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_xorshift v0.2.0
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking bytemuck v1.9.1
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking noise v0.7.0 (https://github.com/Razaekel/noise-rs.git?branch=develop#92ec3c1e)
[INFO] [stderr]     Checking jpeg-decoder v0.2.4
[INFO] [stderr]     Checking tiff v0.7.2
[INFO] [stderr]    Compiling pin-project-internal v1.0.10
[INFO] [stderr]     Checking pin-project v1.0.10
[INFO] [stderr]     Checking flume v0.10.12
[INFO] [stderr]     Checking exr v1.4.1
[INFO] [stderr]     Checking image v0.24.1
[INFO] [stderr]     Checking ray v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `EmptyObject`
[INFO] [stdout]  --> src/render.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::object::{Object, Ray, EmptyObject};
[INFO] [stdout]   |                                  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EmptyObject`
[INFO] [stdout]  --> src/render.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::object::{Object, Ray, EmptyObject};
[INFO] [stdout]   |                                  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.23s
[INFO] running `Command { std: "docker" "inspect" "d71b15bc7def0453b12a23bd1e3701e4a861437b94ab8f9e8deec692c9997c0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d71b15bc7def0453b12a23bd1e3701e4a861437b94ab8f9e8deec692c9997c0e", kill_on_drop: false }`
[INFO] [stdout] d71b15bc7def0453b12a23bd1e3701e4a861437b94ab8f9e8deec692c9997c0e
[INFO] checking jeffreyrosenbluth/ray against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffreyrosenbluth%2Fray" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jeffreyrosenbluth/ray on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jeffreyrosenbluth/ray
[INFO] finished tweaking git repo https://github.com/jeffreyrosenbluth/ray
[INFO] tweaked toml for git repo https://github.com/jeffreyrosenbluth/ray written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/jeffreyrosenbluth/ray already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f87a635b2a7d70eb63df188e383a47ed70abb38703b31a004fb8a327cbd0d4a1
[INFO] running `Command { std: "docker" "start" "-a" "f87a635b2a7d70eb63df188e383a47ed70abb38703b31a004fb8a327cbd0d4a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f87a635b2a7d70eb63df188e383a47ed70abb38703b31a004fb8a327cbd0d4a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f87a635b2a7d70eb63df188e383a47ed70abb38703b31a004fb8a327cbd0d4a1", kill_on_drop: false }`
[INFO] [stdout] f87a635b2a7d70eb63df188e383a47ed70abb38703b31a004fb8a327cbd0d4a1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ef3f6ffa6fce4af366c1cd85c4637ed9924d3b282c47f34c0709db9aa173ba21
[INFO] running `Command { std: "docker" "start" "-a" "ef3f6ffa6fce4af366c1cd85c4637ed9924d3b282c47f34c0709db9aa173ba21", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.8
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.37
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling rayon-core v1.9.2
[INFO] [stderr]    Compiling syn v1.0.91
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.8
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]     Checking crossbeam-channel v0.5.4
[INFO] [stderr]    Compiling rayon v1.5.2
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking miniz_oxide v0.5.1
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking spin v0.9.2
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking deflate v1.0.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.4.0
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]     Checking weezl v0.1.5
[INFO] [stderr]     Checking flate2 v1.0.23
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking lebe v0.5.1
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking bit_field v0.10.1
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]     Checking gif v0.11.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking png v0.17.5
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking rand_xorshift v0.2.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking bytemuck v1.9.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking noise v0.7.0 (https://github.com/Razaekel/noise-rs.git?branch=develop#92ec3c1e)
[INFO] [stderr]     Checking jpeg-decoder v0.2.4
[INFO] [stderr]     Checking tiff v0.7.2
[INFO] [stderr]    Compiling pin-project-internal v1.0.10
[INFO] [stderr]     Checking pin-project v1.0.10
[INFO] [stderr]     Checking flume v0.10.12
[INFO] [stderr]     Checking exr v1.4.1
[INFO] [stderr]     Checking image v0.24.1
[INFO] [stderr]     Checking ray v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/aabb.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |         for a in 0..3 {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:18:34
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let axis = rng.gen_range(0..3);
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:56:38
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let box_x = x.bounding_box(&(0.0..0.0)).unwrap();
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:57:38
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let box_y = y.bounding_box(&(0.0..0.0)).unwrap();
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             0.0..1.0,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:76:34
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let time = rng.gen_range(self.exposure.start..self.exposure.end);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             0.0..0.0,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:222:34
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let x: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:223:34
[INFO] [stdout]     |
[INFO] [stdout] 223 |     let y: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:224:34
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let z: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:246:41
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let p = Vec3::new(rng.gen_range(-1.0..1.0), rng.gen_range(-1.0..1.0), 0.0);
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:246:67
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let p = Vec3::new(rng.gen_range(-1.0..1.0), rng.gen_range(-1.0..1.0), 0.0);
[INFO] [stdout]     |                                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:289:42
[INFO] [stdout]     |
[INFO] [stdout] 289 |         let bbox = object.bounding_box(&(0.0..1.0)).map(|b| {
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 |             for i in 0..2 {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:291:26
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 for j in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:292:30
[INFO] [stdout]     |
[INFO] [stdout] 292 |                     for k in 0..2 {
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:303:34
[INFO] [stdout]     |
[INFO] [stdout] 303 |                         for c in 0..3 {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/rect.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let pr = rng.gen_range(self.p0..self.p1);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/rect.rs:93:32
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let qr = rng.gen_range(self.q0..self.q1);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EmptyObject`
[INFO] [stdout]  --> src/render.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::object::{Object, Ray, EmptyObject};
[INFO] [stdout]   |                                  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:72:15
[INFO] [stdout]    |
[INFO] [stdout] 72 |     for j in (0..h).rev() {
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let scanline: Vec<Color> = (0..w)
[INFO] [stdout]    |                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 for s in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:81:30
[INFO] [stdout]    |
[INFO] [stdout] 81 |                     for t in 0..n {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:165:14
[INFO] [stdout]     |
[INFO] [stdout] 165 |     for i in 0..BOXES_PER_SIDE {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |         for j in 0..BOXES_PER_SIDE {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:172:36
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let y1 = rng.gen_range(1.0..101.0);
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:182:49
[INFO] [stdout]     |
[INFO] [stdout] 182 |     objects.add(BvhNode::new(&mut boxes1, 0, n, 0.0..1.0));
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         0.0..1.0,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:225:14
[INFO] [stdout]     |
[INFO] [stdout] 225 |     for _ in 0..ns {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:227:34
[INFO] [stdout]     |
[INFO] [stdout] 227 |             rand_point(&mut rng, 0.0..165.0),
[INFO] [stdout]     |                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:234:63
[INFO] [stdout]     |
[INFO] [stdout] 234 |         Rotate::new(Axis::Y, BvhNode::new(&mut boxes2, 0, ns, 0.0..1.0), 15.0),
[INFO] [stdout]     |                                                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:246:9
[INFO] [stdout]     |
[INFO] [stdout] 246 |         0.0..1.0,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/scenes.rs:263:14
[INFO] [stdout]     |
[INFO] [stdout] 263 |     for a in -11..=11 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/scenes.rs:264:18
[INFO] [stdout]     |
[INFO] [stdout] 264 |         for b in -11..=11 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:271:46
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 (a as Float) + rng.gen_range(0.0..0.9),
[INFO] [stdout]     |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:273:46
[INFO] [stdout]     |
[INFO] [stdout] 273 |                 (b as Float) + rng.gen_range(0.0..0.9),
[INFO] [stdout]     |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:278:51
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 let albedo = rand_color(&mut rng, 0.0..1.0) * rand_color(&mut rng, 0.0..1.0);
[INFO] [stdout]     |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:278:84
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 let albedo = rand_color(&mut rng, 0.0..1.0) * rand_color(&mut rng, 0.0..1.0);
[INFO] [stdout]     |                                                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:280:65
[INFO] [stdout]     |
[INFO] [stdout] 280 |                 let _center2 = center + vec3(0.0, rng.gen_range(0.0..0.5), 0.0);
[INFO] [stdout]     |                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:286:51
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 let albedo = rand_color(&mut rng, 0.4..1.0);
[INFO] [stdout]     |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:287:42
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 let fuzz = rng.gen_range(0.0..0.5);
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:302:48
[INFO] [stdout]     |
[INFO] [stdout] 302 |     world.add(BvhNode::new(&mut marbles, 0, n, 0.0..1.0));
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:320:49
[INFO] [stdout]     |
[INFO] [stdout] 320 |         Box::new(BvhNode::new(&mut world, 0, n, 0.0..1.0)),
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/sphere.rs:42:25
[INFO] [stdout]    |
[INFO] [stdout] 42 |             time_range: 0.0..0.0,
[INFO] [stdout]    |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/io.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for y in 0..height {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/io.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 22 |         for x in 0..width {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/aabb.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |         for a in 0..3 {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:18:34
[INFO] [stdout]    |
[INFO] [stdout] 18 |         let axis = rng.gen_range(0..3);
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:56:38
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let box_x = x.bounding_box(&(0.0..0.0)).unwrap();
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/bvh.rs:57:38
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let box_y = y.bounding_box(&(0.0..0.0)).unwrap();
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             0.0..1.0,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:76:34
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let time = rng.gen_range(self.exposure.start..self.exposure.end);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/camera.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             0.0..0.0,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:222:34
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let x: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:223:34
[INFO] [stdout]     |
[INFO] [stdout] 223 |     let y: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:224:34
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let z: Float = rng.gen_range(-1.0..1.0);
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:246:41
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let p = Vec3::new(rng.gen_range(-1.0..1.0), rng.gen_range(-1.0..1.0), 0.0);
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/geom.rs:246:67
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let p = Vec3::new(rng.gen_range(-1.0..1.0), rng.gen_range(-1.0..1.0), 0.0);
[INFO] [stdout]     |                                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:289:42
[INFO] [stdout]     |
[INFO] [stdout] 289 |         let bbox = object.bounding_box(&(0.0..1.0)).map(|b| {
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:290:22
[INFO] [stdout]     |
[INFO] [stdout] 290 |             for i in 0..2 {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:291:26
[INFO] [stdout]     |
[INFO] [stdout] 291 |                 for j in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:292:30
[INFO] [stdout]     |
[INFO] [stdout] 292 |                     for k in 0..2 {
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/object.rs:303:34
[INFO] [stdout]     |
[INFO] [stdout] 303 |                         for c in 0..3 {
[INFO] [stdout]     |                                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/rect.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let pr = rng.gen_range(self.p0..self.p1);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/rect.rs:93:32
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let qr = rng.gen_range(self.q0..self.q1);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EmptyObject`
[INFO] [stdout]  --> src/render.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::object::{Object, Ray, EmptyObject};
[INFO] [stdout]   |                                  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:72:15
[INFO] [stdout]    |
[INFO] [stdout] 72 |     for j in (0..h).rev() {
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:74:37
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let scanline: Vec<Color> = (0..w)
[INFO] [stdout]    |                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 for s in 0..n {
[INFO] [stdout]    |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/render.rs:81:30
[INFO] [stdout]    |
[INFO] [stdout] 81 |                     for t in 0..n {
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:165:14
[INFO] [stdout]     |
[INFO] [stdout] 165 |     for i in 0..BOXES_PER_SIDE {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |         for j in 0..BOXES_PER_SIDE {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:172:36
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let y1 = rng.gen_range(1.0..101.0);
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:182:49
[INFO] [stdout]     |
[INFO] [stdout] 182 |     objects.add(BvhNode::new(&mut boxes1, 0, n, 0.0..1.0));
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         0.0..1.0,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:225:14
[INFO] [stdout]     |
[INFO] [stdout] 225 |     for _ in 0..ns {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:227:34
[INFO] [stdout]     |
[INFO] [stdout] 227 |             rand_point(&mut rng, 0.0..165.0),
[INFO] [stdout]     |                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:234:63
[INFO] [stdout]     |
[INFO] [stdout] 234 |         Rotate::new(Axis::Y, BvhNode::new(&mut boxes2, 0, ns, 0.0..1.0), 15.0),
[INFO] [stdout]     |                                                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:246:9
[INFO] [stdout]     |
[INFO] [stdout] 246 |         0.0..1.0,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/scenes.rs:263:14
[INFO] [stdout]     |
[INFO] [stdout] 263 |     for a in -11..=11 {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/scenes.rs:264:18
[INFO] [stdout]     |
[INFO] [stdout] 264 |         for b in -11..=11 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:271:46
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 (a as Float) + rng.gen_range(0.0..0.9),
[INFO] [stdout]     |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:273:46
[INFO] [stdout]     |
[INFO] [stdout] 273 |                 (b as Float) + rng.gen_range(0.0..0.9),
[INFO] [stdout]     |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:278:51
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 let albedo = rand_color(&mut rng, 0.0..1.0) * rand_color(&mut rng, 0.0..1.0);
[INFO] [stdout]     |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:278:84
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 let albedo = rand_color(&mut rng, 0.0..1.0) * rand_color(&mut rng, 0.0..1.0);
[INFO] [stdout]     |                                                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:280:65
[INFO] [stdout]     |
[INFO] [stdout] 280 |                 let _center2 = center + vec3(0.0, rng.gen_range(0.0..0.5), 0.0);
[INFO] [stdout]     |                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:286:51
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 let albedo = rand_color(&mut rng, 0.4..1.0);
[INFO] [stdout]     |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:287:42
[INFO] [stdout]     |
[INFO] [stdout] 287 |                 let fuzz = rng.gen_range(0.0..0.5);
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:302:48
[INFO] [stdout]     |
[INFO] [stdout] 302 |     world.add(BvhNode::new(&mut marbles, 0, n, 0.0..1.0));
[INFO] [stdout]     |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/scenes.rs:320:49
[INFO] [stdout]     |
[INFO] [stdout] 320 |         Box::new(BvhNode::new(&mut world, 0, n, 0.0..1.0)),
[INFO] [stdout]     |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/sphere.rs:42:25
[INFO] [stdout]    |
[INFO] [stdout] 42 |             time_range: 0.0..0.0,
[INFO] [stdout]    |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/io.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |     for y in 0..height {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/io.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 22 |         for x in 0..width {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/bvh.rs:16:71
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn new(objects: &mut Objects, start: usize, end: usize, time: Range<Float>) -> Self {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/bvh.rs:94:42
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn bounding_box(&self, _time_range: &std::ops::Range<Float>) -> Option<Aabb> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/camera.rs:27:19
[INFO] [stdout]    |
[INFO] [stdout] 27 |         exposure: std::ops::Range<Float>,
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/geom.rs:265:47
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn rand_color<R: Rng>(rng: &mut R, range: std::ops::Range<Float>) -> Color {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/geom.rs:272:47
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub fn rand_point<R: Rng>(rng: &mut R, range: std::ops::Range<Float>) -> Color {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:132:41
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn bounding_box(&self, time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:158:41
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn bounding_box(&self, time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:191:42
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn bounding_box(&self, _time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:233:41
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn bounding_box(&self, time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:259:41
[INFO] [stdout]     |
[INFO] [stdout] 259 |     fn bounding_box(&self, time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn bounding_box(&self, _time_range: &Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/object.rs:402:41
[INFO] [stdout]     |
[INFO] [stdout] 402 |     fn bounding_box(&self, time_range: &std::ops::Range<Float>) -> Option<crate::aabb::Aabb> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/rect.rs:67:42
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn bounding_box(&self, _time_range: &std::ops::Range<Float>) -> Option<crate::aabb::Aabb> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/rect.rs:181:42
[INFO] [stdout]     |
[INFO] [stdout] 181 |     fn bounding_box(&self, _time_range: &std::ops::Range<Float>) -> Option<Aabb> {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public struct field
[INFO] [stdout]   --> src/sphere.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub time_range: Range<Float>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/sphere.rs:25:21
[INFO] [stdout]    |
[INFO] [stdout] 25 |         time_range: Range<Float>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/sphere.rs:91:41
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn bounding_box(&self, time_range: &Range<Float>) -> Option<crate::aabb::Aabb> {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 17 previous errors; 47 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ray` (lib) due to 18 previous errors; 47 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ef3f6ffa6fce4af366c1cd85c4637ed9924d3b282c47f34c0709db9aa173ba21", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef3f6ffa6fce4af366c1cd85c4637ed9924d3b282c47f34c0709db9aa173ba21", kill_on_drop: false }`
[INFO] [stdout] ef3f6ffa6fce4af366c1cd85c4637ed9924d3b282c47f34c0709db9aa173ba21
